package com.bootdo.xiao.suggest;

import java.text.NumberFormat;

/**
 * @Auther: liuj
 * @Date: 2019/5/22 17:09
 * @Description:避免带有变长参数的方法重载
 */
public class Suggest4 {
    public static void main(String[] args){
        Suggest4 suggest4 = new Suggest4();
        //因为int是一个简单数据类型，而数组本身是一个对象，编译器会从最简单的开始“猜想”，只要符合编译条件（慎重考虑变长方法的重载）
        suggest4.calPrice(100,75);
        //确定调用长方法
        suggest4.calPrice(100,75,85,90);
    }

    private void calPrice(int price, int discount){
        float p = price*discount;
        System.out.println("简单折扣价格 ： "+ formateCurrency(p));
    }

    private void calPrice(int price, int...discounts){
        float p = price;
        for(int discount : discounts){
            p = p * discount /100;
        }

        System.out.println("复杂折扣 ： " + p);
    }

    //格式化成本的货币形式
    private String formateCurrency(float price){
        //
        return NumberFormat.getCurrencyInstance().format(price/100);
    }
}
